package com.ruoyi.hqfinance.controller;

import com.ruoyi.common.core.domain.R;
import com.ruoyi.common.domain.vo.TableVo;
import com.ruoyi.common.service.TableService;
import com.ruoyi.hqfinance.domain.HqFcSheet;
import com.ruoyi.hqfinance.domain.HqKuaiBaoSheet;
import com.ruoyi.hqfinance.domain.vo.HqPlatformBillSheetVo;
import com.ruoyi.hqfinance.service.HqPlatformBillSheetService;
import com.ruoyi.logistic.domain.PageInfo;
import com.ruoyi.logistic.utils.TableUtils;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/hq/platformBillSheet")
@Api(tags = "总部财务-平台账单报表")
public class HqPlatformBillSheetServiceController {
    @Autowired
    private HqPlatformBillSheetService hqPlatformBillSheetService;
    @Autowired
    private TableService tableService;

    @ApiOperation("平台账单报表")
    @PostMapping("/collectKB")
    public R collect(@RequestBody HqPlatformBillSheetVo vo) {
        if (vo.getPlatType() == 1) {
            List<HqKuaiBaoSheet> list = hqPlatformBillSheetService.collectKB(vo);
            List<TableVo> fieldList = tableService.getFieldAnnotation(new HqKuaiBaoSheet());
            return TableUtils.handleListResponse(list, fieldList, "暂无数据");
        } else {
            List<HqFcSheet> list = hqPlatformBillSheetService.collectFC(vo);
            List<TableVo> fieldList = tableService.getFieldAnnotation(new HqFcSheet());
            return TableUtils.handleListResponse(list, fieldList, "暂无数据");
        }
    }
}
